package com.dyzx.hbb.modules.sys.vo;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

@Data
public class SysWorkDiscountUVO {
    @Schema(description = "编号")
    @JsonProperty("id")
    @NotNull(message = "编号不能为空")
    private Long id;
    /**
     * 优惠名称（如："会员折扣"）
     */
  //  @NotNull(message = "优惠名称不能为空")
            @Schema(description = "优惠名称（如：\"会员折扣\"）")
    private String name;

    /**
     * 优惠类型（1-折扣；2-减免）
     */
  //  @NotNull(message = "优惠类型不能为空")
            @Schema(description = "优惠类型（1-折扣；2-减免）")
    private Integer type;

    /**
     * 总金额（元）
     */
    @NotNull(message = "总金额不能为空")
    @Schema(description = "总金额（元）")
    private Long amt;

    /**
     * 外部客户ID（若为外部车辆维修）
     */
    @Schema(description = "外部客户ID（若为外部车辆维修）")
    @JsonProperty("customer_id")
    private Long customerId;


    /**
     * 关联工单ID
     */
    @Schema(description = "关联工单ID")
    @JsonProperty("order_id")
    private Long orderId;

    /**
     * 优惠开始
     */
    @Schema(description = "优惠开始")
    @JsonProperty("start_date")
    private Long startDate;

    /**
     * 优惠结束
     */
    @Schema(description = "优惠结束")
    @JsonProperty("end_date")
    private Long endDate;

    /**
     * 关联工单ID
     */
    @Schema(description = "关联工单ID")
    @JsonProperty("work_id")
    private Long workId;

    /**
     * 关联项目Type
     */
    @Schema(description = "关联项目Type")
    @JsonProperty("target_type")
    private Integer targetType;

}
